package com.naiterui.ehp.bp.bo.recommend;

import java.io.Serializable;
import java.util.Date;

/**
 * 推荐信息BO
 *
 * @since 2.14
 */
public class MedicationRecomBO implements Serializable {

    /**
     * 字段或域定义：<code>serialVersionUID</code>
     */
    private static final long serialVersionUID = 7893003009626448284L;

    /**
     * 处方作废状态：作废
     */
    public static final Integer RECOM_INVALID_YEAH = 1;
    /**
     * 处方作废状态：正常
     */
    public static final Integer RECOM_INVALID_NO = 0;


    private Long id;
    private Long doctorId;
    private String doctorName;
    private Long patientId;
    private String orderId;
    /**
     * 问诊会话id：<code>sessionId</code>
     */
    private Long sessionId;
    private Integer orderAmount;
    /**
     * 推荐类型：<code>type</code>
     * 1普通推荐,2求药推荐,3系统推荐
     */
    private Integer type;
    private Long requireId;
    private Integer status;
    private String extId;
    private Date createdAt;
    private Date changedAt;
    private Date expireAt;
    /**
     * 处方笺流水号：<code>serialNumber</code>
     */
    private String serialNumber;
    /**
     * 处方笺临床诊断：<code>diagnosis</code>
     */
    private String diagnosis;

    /**
     * 是否发放奖励
     */
    private boolean rewardFlag;

    /**
     * 是否发送通知
     */
    private boolean messageFlag;

    /**
     * 作废状态：0 正常  1 作废【医生端V3.4.0-by gongbaoqiang】
     */
    private Integer invalid;

    /**
     * 作废时间【医生端V3.4.0-by gongbaoqiang】
     */
    private Date invalidAt;

    /**
     * @return Long 取得域 id 的方法。
     */
    public Long getId() {
        return id;
    }

    /**
     * @param id 对域 id 的设置方法.
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * @return Long 取得域 doctorId 的方法。
     */
    public Long getDoctorId() {
        return doctorId;
    }

    /**
     * @param doctorId 对域 doctorId 的设置方法.
     */
    public void setDoctorId(Long doctorId) {
        this.doctorId = doctorId;
    }

    /**
     * @return Long 取得域 patientId 的方法。
     */
    public Long getPatientId() {
        return patientId;
    }

    /**
     * @param patientId 对域 patientId 的设置方法.
     */
    public void setPatientId(Long patientId) {
        this.patientId = patientId;
    }

    /**
     * @return String 取得域 orderId 的方法。
     */
    public String getOrderId() {
        return orderId;
    }

    /**
     * @param orderId 对域 orderId 的设置方法.
     */
    public void setOrderId(String orderId) {
        this.orderId = orderId;
    }

    /**
     * @return Long 取得域 sessionId 的方法。
     */
    public Long getSessionId() {
        return sessionId;
    }

    /**
     * @param sessionId 对域 sessionId 的设置方法.
     */
    public void setSessionId(Long sessionId) {
        this.sessionId = sessionId;
    }

    /**
     * @return Integer 取得域 orderAmount 的方法。
     */
    public Integer getOrderAmount() {
        return orderAmount;
    }

    /**
     * @param orderAmount 对域 orderAmount 的设置方法.
     */
    public void setOrderAmount(Integer orderAmount) {
        this.orderAmount = orderAmount;
    }

    /**
     * @return Integer 取得域 type 的方法。
     */
    public Integer getType() {
        return type;
    }

    /**
     * @param type 对域 type 的设置方法.
     */
    public void setType(Integer type) {
        this.type = type;
    }

    /**
     * @return Long 取得域 requireId 的方法。
     */
    public Long getRequireId() {
        return requireId;
    }

    /**
     * @param requireId 对域 requireId 的设置方法.
     */
    public void setRequireId(Long requireId) {
        this.requireId = requireId;
    }

    /**
     * @return Integer 取得域 status 的方法。
     */
    public Integer getStatus() {
        return status;
    }

    /**
     * @param status 对域 status 的设置方法.
     */
    public void setStatus(Integer status) {
        this.status = status;
    }

    /**
     * @return String 取得域 extId 的方法。
     */
    public String getExtId() {
        return extId;
    }

    /**
     * @param extId 对域 extId 的设置方法.
     */
    public void setExtId(String extId) {
        this.extId = extId;
    }

    /**
     * @return Date 取得域 createdAt 的方法。
     */
    public Date getCreatedAt() {
        return createdAt;
    }

    /**
     * @param createdAt 对域 createdAt 的设置方法.
     */
    public void setCreatedAt(Date createdAt) {
        this.createdAt = createdAt;
    }

    /**
     * @return Date 取得域 changedAt 的方法。
     */
    public Date getChangedAt() {
        return changedAt;
    }

    /**
     * @param changedAt 对域 changedAt 的设置方法.
     */
    public void setChangedAt(Date changedAt) {
        this.changedAt = changedAt;
    }

    /**
     * @return Date 取得域 expireAt 的方法。
     */
    public Date getExpireAt() {
        return expireAt;
    }

    /**
     * @param expireAt 对域 expireAt 的设置方法.
     */
    public void setExpireAt(Date expireAt) {
        this.expireAt = expireAt;
    }

    /**
     * @return String 取得域 serialNumber 的方法。
     */
    public String getSerialNumber() {
        return serialNumber;
    }

    /**
     * @param serialNumber 对域 serialNumber 的设置方法.
     */
    public void setSerialNumber(String serialNumber) {
        this.serialNumber = serialNumber;
    }

    /**
     * @return String 取得域 diagnosis 的方法。
     */
    public String getDiagnosis() {
        return diagnosis;
    }

    /**
     * @param diagnosis 对域 diagnosis 的设置方法.
     */
    public void setDiagnosis(String diagnosis) {
        this.diagnosis = diagnosis;
    }

    public boolean isRewardFlag() {
        return rewardFlag;
    }

    public void setRewardFlag(boolean rewardFlag) {
        this.rewardFlag = rewardFlag;
    }

    public boolean isMessageFlag() {
        return messageFlag;
    }

    public void setMessageFlag(boolean messageFlag) {
        this.messageFlag = messageFlag;
    }

    public Integer getInvalid() {
        return invalid;
    }

    public void setInvalid(Integer invalid) {
        this.invalid = invalid;
    }

    public Date getInvalidAt() {
        return invalidAt;
    }

    public void setInvalidAt(Date invalidAt) {
        this.invalidAt = invalidAt;
    }

    public String getDoctorName() {
        return doctorName;
    }

    public void setDoctorName(String doctorName) {
        this.doctorName = doctorName;
    }
}